const db=require('../utils/db')
const util=require('../utils/util.js')

//获取全部标签
exports.getTagList = async (ctx) => {
    // console.log('req userInfo: ',req.cookies.userInfo)
    // console.log('req userInfo 2: ', unescape(req.cookies.userInfo));
    let keyword = ctx.query.keyword || null;
    let pageNum = parseInt(ctx.query.pageNum) || 1;
    let pageSize = parseInt(ctx.query.pageSize) || 10;
    // let conditions = {};
    // if (keyword) {
    //   const reg = new RegExp(keyword, 'i');
    //   conditions = {
    //     $or: [{ name: { $regex: reg } }, { desc: { $regex: reg } }],
    //   };
    // }
    let skip = pageNum - 1 < 0 ? 0 : (pageNum - 1) * pageSize;
    let responseData = {
      count: 0,
      list: [],
    };
     //获取整个article列表
     let res=await new Promise((resolve, reject)=>{
        let sqlLang = `select id,name from tag`;
        return db.query(sqlLang, (err, data)=>{
          if (err) throw err;
          else { 
            responseData.count=data.length
            responseData.list = data;
            util.responseClient(ctx, 200, 0, 'success', responseData);
            resolve(data) 
            
          }
        })    
      })

    // Tag.countDocuments(conditions, (err, count) => {
    //   if (err) {
    //     console.error('Error:' + err);
    //   } else {
    //     responseData.count = count;
    //     let fields = {
    //               _id: 1,
    //       name: 1,
    //       // desc: 1,
    //       // icon: 1,
    //       // create_time: 1,
    //       // update_time: 1,
    //     }; // 待返回的字段
    //     let options = {
    //       skip: skip,
    //       limit: pageSize,
    //       sort: { create_time: -1 },
    //     };
    //     Tag.find(conditions, fields, options, (error, result) => {
    //       if (err) {
    //         console.error('Error:' + error);
    //         // throw error;
    //       } else {
    //         responseData.list = result;
    //         responseClient(res, 200, 0, 'success', responseData);
    //       }
    //     });
    //   }
    // });
  };